#ifndef ARCHLISTAINVERTIDA_H_
#define ARCHLISTAINVERTIDA_H_

#include <string>
#include "../../BloqArch/ArchBloques.h"
#include "CabeceraListaInvertida.h"
#include "BloqueListaInvertida.h"


class ArchListaInvertida {
	private:
		ArchBloques _arch;
		CabeceraListaInvertida _header;

	public:
		ArchListaInvertida();
		virtual ~ArchListaInvertida();

		void abrir(std::string nombre);
		void crear(std::string nombre);
		void cerrar();

		int guardarLista(const BloqueListaInvertida &bli, int pos = -1);
		void leerLista(BloqueListaInvertida &bli, int pos);
		void borrarLista(int pos);

		bool is_open() const;
		unsigned int getCantBloques() const;
};

#endif /* ARCHLISTAINVERTIDA_H_ */
